1. Technical Field
The present invention relates generally to transactions over computer networks and more particularly to a method for enabling communications between a client and server in the event that a server name has been typed or otherwise entered incorrectly by a user.
2. Description of the Related Art
The World Wide Web is the Internet's multimedia information retrieval system. In the Web environment, client machines effect transactions to Web servers using the Hypertext Transfer Protocol (HTTP), which is a known application protocol providing users access to files (e.g., text, graphics, images, sound, video, etc.) using a standard page description language known as Hypertext Markup Language (HTML). HTML provides basic document formatting and allows the developer to specify "links" to other servers and files. In the Internet paradigm, a network path to a server is identified by a so-called Uniform Resource Locator (URL) having a special syntax for defining a network connection. Use of an HTML-compatible browser (e.g., Netscape Navigator or Microsoft Internet Explorer) at a client machine involves specification of a link via the URL. In response, the client makes a request to the server (sometimes referred to as a "Web site") identified in the link and, in return, receives in return a document or other object formatted according to HTML.
Typically, a user specifies a given URL manually by typing the desired character string in an address field of the browser. Existing browsers provide some assistance in this regard. In particular, both Netscape Navigator (Version 3.0 and higher) and Microsoft Internet Explorer (Version 3.0 and higher) store URLs that have been previously accessed from the browser during a given time period. Thus, when the user begins entering a URL, the browser performs a "type-ahead" function while the various characters comprising the string are being entered. Thus, for example, if the given URL is "http://www.ibm.com" (and that URL is present in the URL list), the browser parses the initial keystrokes against the stored URL list and provides a visual indication to the user of a "candidate" URL that the browser considers to be a "match". Thus, as the user is entering the URL he or she desires to access, the browser may "look ahead" and pull a candidate URL from the stored list that matches. If the candidate URL is a match, the user need not complete entry of the fully-resolved URL; rather, he or she simply actuates the "enter" key and the browser is launched to the site.
URL resolution through this "look ahead" approach has provided some benefits, but the technique is unsatisfactory because the target URL may not be on the saved list. Alternatively, a portion of the target URL (e.g., the second level domain name) may be saved in the list but the typing error may be a particular directory or file name toward the end of the long string of characters. In either case, the user is forced to enter a long character string, only to find that the string cannot be meaningfully resolved (by a network naming service or a particular Web server, as the case may be). If the URL includes an error, a "server not found" error message or the like is returned to the user.
It would be desirable to provide an improved technique to intelligently resolve an incorrect URL even if the browser has never accessed the target server. This is the problem addressed by the present invention.